iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 7
0
Mobile Development

Android Studio 菜鳥筆記本系列 第 7

Android Studio 菜鳥筆記本-Day 7-元件介紹-Layout(part 1)

  • 分享至 

  • xImage
  •  

學習android的過程裡,要如何讓人看得清楚,認識layout最為基本也最為重要的,順便分享一些常用的屬性,首先想介紹的Layout元件

  1. LinearLayout(線性布局)
  2. RelativeLayout(相對布局)

LinearLayout

常見的排版方式:
android:orientation="";決定元件的排版方向

  1. vertical 以垂直線的方向排版
  2. horizontal 以水平線的方向排版
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:orientation="vertical">
   <TextView
        android:id="@+id/tv1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="TextView1"
        android:textSize="20sp"
        android:gravity="center"/>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:orientation="horizontal"
        android:layout_marginTop="50dp"
        android:background="#ffff88">
        <TextView
            android:id="@+id/tv2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="TextView2"
            android:textSize="30sp"
            android:layout_marginLeft="40dp"
            android:gravity="center"/>
        <TextView
            android:id="@+id/tv3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="30dp"
            android:layout_gravity="bottom"
            android:text="TextView3"
            android:textSize="30sp"/>
    </LinearLayout>
</LinearLayout>

https://ithelp.ithome.com.tw/upload/images/20200902/20129408rCZzQzVvd1.png
https://ithelp.ithome.com.tw/upload/images/20200902/20129408xKaxsG3xlM.png

  • android:layout_marginLeft=""; 代表此物件距離左邊的多遠
  • android:layout_marginRight=""; 代表此物件距離右邊的多遠
  • android:layout_marginTop=""; 代表此物件距離上面的多遠
  • android:layout_marginBottom="";代表此物件距離下面的多遠

舉例來說:

像TextView2裡TextView2距離左邊界40dp

android:layout_marginLeft="40dp"
  • android:paddingLeft="";物件內部內容對左側撐開

  • android:paddingRight="";物件內部內容對右側撐開

  • android:paddingTop="";物件內部內容對上側撐開

  • android:paddingBottom="";物件內部內容對下側撐開

  • android:padding="";物件內部內容對四邊撐開

  • android:layout_gravity=""該元件在layout內的對齊方式

  • android:gravity="";在元件內部中的對齊方式

RelativeLayout

常見的排版方式:

  1. android:layout_above="@+id"; 此物件在物件id的上方
  2. android:layout_below="@+id"; 此物件在物件id的下方
  3. android:layout_toRightOf="@+id";此物件在物件id的左邊
  4. android:layout_toLeftOf="@+id"; 此物件在物件id的右邊
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:orientation="vertical">

    <TextView
        android:id="@+id/tv1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView1"
        android:textSize="20sp" />
    <TextView
        android:id="@+id/tv2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView2"
        android:textSize="20sp"
        android:layout_toRightOf="@+id/tv1"
        android:layout_marginLeft="20dp" />
    <TextView
        android:id="@+id/tv3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView3"
        android:textSize="20sp" 
        android:layout_below="@id/tv1"/>
    <TextView
        android:id="@+id/tv4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView4"
        android:textSize="20sp"
        android:layout_below="@id/tv2"
        android:layout_toRightOf="@id/tv3"
        android:layout_marginLeft="20dp"/>
</RelativeLayout>

https://ithelp.ithome.com.tw/upload/images/20200819/20129408N7cG1gLaMo.jpg

Thank you for your time


上一篇
Android Studio 菜鳥筆記本-Day 6-開發工具介面介紹
下一篇
Android Studio 菜鳥筆記本-Day 8-元件介紹-Layout(part 2)
系列文
Android Studio 菜鳥筆記本30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言